#include <stdio.h>

int main()
{
    // = : 赋值符号
    // + - * / :                         / ：整除：向下取整
    //int a = 10;  //初始化：所有的变量在定义时都要初始化：避免垃圾值对代码产生影响
    // a = 1.0 * 3 / 2;
    //a += 5;    +=  -=  *=  /=
    //  %   取余
    //a++ : a先给值再自增1(给值)
    //++a : a先自增1再给值(给变量)
    //int a = 10 ;
    //int b = a++ + a++; b=21
    //    b = a++ + ++a; b=22
    //    b = ++a + a++; b=23
    //    b = ++a + ++a; b=24
    //逻辑运算符==  !=  >  <  >=  <=
    //==  ：  判断是否等于
    //！= ：  判断是否不等于
    //1  ：  真
    //0  ：  假
    //&& :    且运算符的两边都是真的，结果才为真
    //|| :    或的两边一边为真的，结果就为真
    //短路机制 : 且的左边为假，右边不再计算
    //            或的左边为真，右边不再计算
    //   !  :    非
    //位运算：   对数据进行二进制运算的操作符
    //  &  ： 按位与       清除某些位:
    //  0 & 0 = 0
    //  0 & 1 = 0
    //  1 & 1 = 1 

    //  |  :  按位或        对某些位置1
    //  0 | 0 = 0
    //  0 | 1 = 1
    //  1 | 1 = 1 

    //   ^  :  异或
    //两个数相同为0
    //两个数相异为1

    //   ~  ： 取反(符号位也要取反)
    //   >>  :  右移
    //   <<  :  左移

    //求平均
    //int a ;
    //int b ;
    //int c = ( a & b ) + (( a ^ b ) >> 1);

    //操作数：
    //单目运算符： ++  --  !  ~
    //双目运算符:  +  -  *  /  %  ...
    //三目运算符:  (逻辑表达式)?(表达式为真):(表达式为假)

    int a = 10 ;
    int b = 20 ;
    int c = a > b ? a : b;
    printf("%d\n",c);
    return 0 ;
    

}